Picture data reproducing apparatus and method

ABSTRACT

In an STC generating step, STCs (STC_d) delayed a time “System_delay” from STC (STC_medium) in compressed picture data read from a recording medium in the normal-speed reproduction mode is sequentially generated. In this STC generating step, there is set at shift from a variable-speed reproduction to normal-speed reproduction an STC initial value on the basis of results of comparison between PTS (PTS_s) in display picture data at the time of reproduction mode shift and {STC_medium at the shift−(delay due to the shift (shift_delay)+System_delay)}. Thus, when shifting the reproduction mode from a variable-speed one to normal-sped one in compliance with the MPEG standard, pictures can smoothly be displayed in the normal-speed reproduction mode without skipping over any displayed pictures.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a picture data reproducing apparatusand method, usable suitably for reproducing picture data coded accordingto the MPEG (Moving Picture Experts Group) standard by decoding thedata.

This application claims the priority of the Japanese Patent ApplicationNo. 2002-206119 filed on Jul. 15, 2002, the entirety of which isincorporated by reference herein.

2. Description of the Related Art

Recently, various digital video coding techniques as typified by MPEG-2(ISO/IEC 13818) have been proposed to compress a video by coding. Thevideo compression according to the MPEG standard is such that a signalproduced by effecting a hybrid transform which is a combination ofinter-picture motion compensation and DCT (discrete cosine transform)undergoes quantization and variable-length coding.

According to the MPEG standard, picture planes (frames or fields)included in a video are compressed by coding them into any one ofpicture types including I, P and B pictures. The I picture is anintra-frame predictive coded picture or an intra coded picture. It is apicture predictively coded in one frame. The P picture is a frameforward-predictive coded picture or a predictive coded picture. It is apicture predicted by referring to a previous frame (I or P picture)which is already coded. The B picture is a bidirectionally predictivecoded picture or a bidirectional coded picture. It is a picturepredicted by referring to two frames, namely, a previous one and laterone.

As above, according to the MPEG standard, video compression is done byinter-picture predictive coding, whereby it is made possible toefficiently compress a video and access the compressed video at random.Also, according to the MPEG standard, pictures of each of the abovetypes are compressed into a data stream formed in units of a group ofpictures (GOP) including an arbitrary number of pictures. The MPEGstandard prescribes that at least one I picture should be included in aGOP to make it possible to make random access to a video compressed inunits of GOP.

Note here that the MPEG-defined technique is not advantageous in that incase data is reproduced at a half, quarter, . . . , of a normal speed orin case a so-called variable-speed reproduction including frame advanceand the like is shifted to the normal-speed reproduction, a skip is madeover a picture being displayed due to the speed changing. Also, sincepicture cannot be displayed at the normal speed before reproduction of arecording medium is completely shifted to the one at the normal speed,shifting of the variable-speed reproduction to the desired normal-speedreproduction takes a long time before the user can actually view a videoreproduced at the desired speed.

OBJECT AND SUMMARY OF THE INVENTION

It is therefore an object of the present invention to overcome theabove-mentioned drawbacks of the related art by providing a picture datareproducing apparatus and method, in which normal speed-reproducedpicture can smoothly be displayed without skipping over any picturebeing displayed in case variable-speed reproduction is shifted tonormal-speed reproduction when picture data compressed according to theMPEG standard is being reproduced.

The above object can be attained by providing a picture data reproducingapparatus which reproduces compressed picture data recorded to arecording medium according the MPEG standard, the apparatus includingaccording to the present invention:

a storage means for storing compressed picture data read from arecording medium;

an STC generating means for generating, for a normal-speed reproduction,STC (STC_d) sequentially from a set initial value, wherein the STC(STC_d) is delayed a fixed time (System_delay) from STC (STC_medium) ofthe compressed picture data read from the recording medium;

a read control means for sequentially reading compressed picture datastored in the storage means on the basis of STC_d generated by the STCgenerating means; and

a decoding means for decoding the compressed picture data read by theread control means to generate picture data for display;

the STC generating means setting, at shift from a variable-speedreproduction to normal-speed reproduction, the initial value on thebasis of a result of comparison between PTS (PTS_s) of the displaypicture data at the shift and STC_medium at the shift−(amount of delaydue to the shift (shift_delay)+System_delay).

Also the above object can be attained by providing a picture datareproducing method of reproducing compressed picture data recorded to arecording medium according the MPEG standard, the method including,according to the present invention, the steps of:

storing compressed picture data read from a recording medium;

generating, for a normal-speed reproduction, STC (STC_d) sequentiallyfrom a set initial value, wherein the STC (STC_d) is delayed a fixedtime (System_delay) from STC (STC_medium) of the compressed picture dataread from the recording medium;

sequentially reading compressed picture data stored in the storage meanscorrespondingly STC_d generated by the STC generating means; and

decoding the compressed picture data read by the read control means togenerate picture data for display;

in the STC generating step, the initial value being set at shift from avariable-speed reproduction to normal-speed reproduction on the basis ofa result of comparison between PTS (PTS_s) of the display picture dataat the shift and STC_medium at the shift−(amount of delay due to theshift (shift_delay)+System_delay).

These objects and other objects, features and advantages of the presentinvention will become more apparent from the following detaileddescription of the preferred embodiments of the present invention whentaken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the construction of a recorder/player according to thepresent invention;

FIG. 2A and FIG. 2B show a relation between STC corresponding to arecording position and data amount in a VBV buffer;

FIG. 3 shows a relation between STC read from a recording medium and STCgenerated by an STC incrementation unit;

FIG. 4 explains operations made by a stream buffer when normal-speedreproduction is shifted to FORWARD variable-speed one;

FIG. 5 explains operations made by the stream buffer when normal-speedreproduction is shifted to REVERSE variable-speed one;

FIG. 6 shows a change of STC at each time when variable-speedreproduction is shifted to normal-speed reproduction;

FIG. 7 shows an example setting of STC initial value for normal-speedreproduction; and

FIG. 8 shows another example setting of STC initial value fornormal-speed reproduction.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The embodiment of the present invention will be described in detailbelow with reference to the accompanying drawings.

The picture data reproducing apparatus according to the presentinvention is applied to a picture recorder/player, indicated with areference 1, which records picture data to a recording medium accordingto the MPEG (Moving Picture Experts Group) standard defining a highlyefficient compression coding of motion pictures or reproduces the motionpicture data from the recording medium. As shown in FIG. 1, the picturerecorder/player 1 includes a recording system 10 which recordscompressed picture data to a recording medium 4, and a reproductionsystem 30 which expands or decompresses the picture data read from therecording medium 4. It should be noted that the recording medium 4 is amagnetic tape or disc intended to record picture and audio data, forexample.

The recording system 10 includes an MPEG compressor 11, DRAM 12, DRAMread controller 13, recording medium controller 14, STC (system timeclock) generator 15, ETN (extended track number) adder 16, audiocompressor 17, mixer 18 and an ECC (error correction code) encoder 19.

The MPEG compressor 11 generates compressed picture data by encodinginput picture signals by compression on the basis of coded parameterssuch as a picture type, quantization step, etc. on the basis of STCsupplied from the STC generator 15. The MPEG compressor 11 sends thegenerated compressed picture data to the DRAM 12.

The DRAM 12 stores the compressed picture data sent from the MPEGcompressor 11. The DRAM read controller 13 reads the compressed picturedata from the DRAM 12 and supplies it to the mixer 16 in a predeterminedtiming.

The recording medium controller 14 is provided to control the drivenstate of the recording medium 4. In case the recording medium 4 is amagnetic tape, for example, the recording medium controller 14 isequivalent to a servo controller. The recording medium controller 14 cancontrol the recording medium 4 to record or reproduce various kinds ofdata at the normal speed and also can freely control the recordingmedium 4 correspondingly to a selected speed in the so-calledvariable-speed reproduction in which data is reproduced at a half orquarter, . . . , of the normal speed, frame is advanced or any otheroperation is done at a variable speed. The recording medium controller14 generates ETN (extended track number) that is recording positioninformation in the recording medium 4 on the basis of read timeinformation received from the reproduction system 30 and which will bedescribed in detail later, and sends it to the STC generator 15 and ETNadder 16.

The STC generator 15 generates STC (system time clock) on the basis ofETN supplied from the recording medium controller 14, and supplies it tothe MPEG compressor 11. It should be noted that ETN is a number oftracks counted from the beginning in the recording medium 4. In a systemwhose field frequency at a rate 10 tracks/frame is 59.94 Hz, forexample, STC is represented by ETN×300.3. That is, recording ETNsimultaneously with recording of data to the recording medium issubstantially equivalent to recording STC. At the time of reproduction,STC can be reproduced on the basis of the recorded STN.

The ETN adder 16 adds ETN sent from the recording medium controller 14to auxiliary data (AUX) recorded to the recording medium 4, and suppliesthe data to the mixer 18.

The audio compressor 17 generates compressed audio data by encodinginput audio signals by compression. The MPEG compressor 11 supplies thecompressed audio data to the mixer 18.

The mixer 18 allocates the input compressed picture data, compressedaudio data and AUX in an order of recording to the recording medium 4,and supplies the data to the ECC encoder 19. The ECC encoder 19 adds ECC(error correction code) to the data stream received from the mixer 18,and records the data to the recoding medium 4, for example, to amagnetic tape rotated on a rotating drum via a magnetic head (both notshown).

As shown, the reproduction system 30 includes an ECC decoder 31, picturedata separator 32, storage unit 33, data read controller 34, MPEGexpander 35, steam buffer 36, base-band buffer 37, AUX separator 38, ETNacquisition unit 39, STC set value calculator 40, STC incrementationunit 41, STC comparator 42, audio data separator 43, audio expander 44and a TS encoder 45.

The ECC decoder 31 reads data stream from the recording medium 4, andremoves ECC added to the read data stream.

The picture data separator 32 selectively reads the compressed picturedata from the ECC decoder 31, and sends the data to the storage unit 33.Also, the picture data separator 32 analyzes PES (packetized elementarystream) header in the read compressed picture data to read DTS (decodingtime stamp), PTS (presentation time stamp) and VBV (video bufferingverifier) delay, generates output time information including an STCtime, that is to be read fro each picture, and sends the information tothe STC comparator 42.

The storage unit 33 stores the compressed picture data sent from thepicture data separator 32 at predetermined addresses, respectively. Thedata read controller 34 reads, from the STC comparator 42, compressedpicture data on pictures corresponding to an STC time included in theread time information sent from the STC comparator 42, and supplies thedata to the MPEG expander 35,

The MPEG expander 35 is supplied with the compressed picture datapicture by picture from the data read controller 34, and receives STCinformation including STC concerning each input picture or GOP from theSTC incrementation unit 41. The MPEG expander 35 makes MPEG expansion ofeach picture on the basis of STC in the received STC information togenerate base-band picture signals. It should be noted that in the STD(system target decoder) system defined in MPEG-2, the expansion timeshall ideally be set as zero (0). Since in any actual decoder, it ispossible to set the expansion time as zero, however, the stream buffer36 is provided additionally to the MPEG expander 35. The inputcompressed picture data from the data read controller 34 is first storedinto the stream buffer 36, and then the compressed picture data is readfrom the stream buffer 36 in a timing of a predetermined STC sent fromthe STC incrementation unit 41 and sequentially expanded. It should benoted that additional compressed picture data may be supplied to thestream buffer 36 by the data read controller 34.

Note that the MPEG expander 35 stores the generated base-band picturesignals in the base-band buffer 37 once, and further reorder them beforedelivery. It should be noted that the reason why the picture signals arestored into the base-band buffer 37 is that decoding a B picture needsreference to an I or P picture before and after the B picture.

The AUX separator 38 selectively reads AUX from the ECC decoder 31,delivers it to outside and sends it to the TS encoder 45. It should benoted that of AUX separated by the AUX separator 38, ETN is extracted bythe ETN acquisition unit 39. The ETN acquisition unit 39 supplies theextracted ETN to the STC set value calculator 40.

The STC set value calculator 40 calculates an initial value of STC onthe basis of ETN supplied from the ETN acquisition unit 39, and sends itto the STC incrementation unit 41. In a normal-speed reproduction, theSTC incrementation unit 41 generates a new STC by linearly increasingthe received initial value of STC, and sends it as the aforementionedSTC information to the MPEG expander 35 and STC comparator 42.

The STC comparator 42 compares the output time information received fromthe picture data separator 32 and STC information received from the STCincrementation unit 41. The STC comparator 42 compares an STC timeassigned to the output time information and STC assigned to the STCinformation, and when the result of comparison is that they coincidewith each other, the STC comparator 42 sends the STC in consideration asread time information to the data read controller 34.

The data read controller 34 having received such a read time informationcan read only a picture at an STC time corresponding to STC set by theSTC incrementation unit 41. In other words, STC information sent fromthe STC incrementation unit 41 permits the data read controller 34 tocontrol a timing of reading each picture. Thus, by determining aninitial value set by the STC incrementation unit 41, it is also possibleto make decoding at a time delayed a predetermined time from the STCtime recorded in the recording medium 4.

The audio data separator 43 selectively reads compressed audio data fromthe ECC decoder 31, and sends the data to the audio expander 44 and TSencoder 45. The audio expander 44 expands the compressed audio datareceived from the audio data separator 43 and provides the decompressedaudio data as an output.

The TS encoder 45 receives the compressed picture data from the dataread controller 34 and AUX from the AUX separator 38, and also receivesthe compressed audio data from the audio data separator 43 and STCinformation from the STC incrementation unit 41. The TS encoder 45packetizes the received streams of compressed picture data, AUX,compressed audio data into transport streams (TS), and adds STC, PCR(program clock reference) and information necessary for TS, acquiredfrom the received STC information, to the transport stream (TS). The TSencoder 45 delivers the packetized TS to outside.

The recorder/player 1 constructed as above functions as will bedescribed below concerning a normal-speed reproduction:

First, the picture and audio data supplied to the recording system 10are encoded by compression in the MPEG compressor 11 and audiocompressor 17, and sent as compressed picture and audio data to themixer 18. Also, AUX supplied to the recording system 10 has ETN addedthereto and is similarly sent to the mixer 18. Since this ETN added toAUX matches STC used in the MPEG compressor 11, data can efficiently beallocated in the downstream mixer 18.

FIG. 2B shows a data stream allocated by the mixer 18 in an order of thedata recorded in the recording medium 4. The data stream recorded to therecording medium 4 is composed of groups of pictures (GOP) eachconsisting of an arbitrary number of pictures grouped according to theMPEG standard. In FIG. 2B, each of rectangular areas each including aGOP. As shown, GOPs are different in rectangular size from each othercorrespondingly to differences in data size from each other. In FIG. 2B,the elliptic area in each rectangular area records compressed audio dataand AUX added to each GOP. The data amount in the elliptic area isextremely small in comparison with the compressed picture data. Itshould be noted that AUX to which auxiliary data including ETN and thelike is added is also stored in a square area defined in each of therectangular areas in fixed cycles irrespectively of the data size ofGOP, as will be seen in FIG. 2B.

FIG. 2A graphically illustrates a relation between STC corresponding tothe recording position shown in FIG. 2B and indicated along thehorizontal axis and data amount in the VBV buffer indicated along thevertical axis. The VBV buffer is a virtual buffer assumed to alwaysascertain the data amount in the input buffer in the recording system10. When each GOP is decoded, the data amount in the VBV buffer willsuddenly be smaller. The decoding is done at fixed intervals ADTS whichare an interval from one decoding management time to another.

In this connection, the dotted line in FIG. 2A indicates sequentialstorage of GOPα into the VBV buffer. In the course of storage, the dataamount in the buffer suddenly falls in the data storage because GOPtemporally preceding GOPα is decoded. GOPα is decoded at DTS (DTS_α) ina position indicated with a dashed line in FIG. 2A. A time from pictureoutput time (a11) at which storage into the VBV buffer starts in GOPα toDTS_α is equivalent to VBV delay of the GOPα.

The above data stream has ECC thereof removed by the ECC decoder 31, andthe compressed picture data is read by the picture data separator 32.Then, a picture output time is determined for each GOP or PES includedin the compressed picture data by calculating DTS-VBV delay for each GOPor PES. The picture output time thus determined is sent as an STC timeincluded in the aforementioned output time information to the STCcomparator 42. Also, the compressed picture data is supplied to thestorage unit 33.

The compressed picture data stored in the storage unit 33 is read by thedata read controller 34 after it is delayed a predetermined time(System_delay) for time adjustment with respect to the audio signal orfor matching with various timing codes added to AUX.

In FIG. 3, a line A indicates STC calculated on the basis of ETNextracted from AUX read from the recording medium 4, and a horizontalaxis t corresponding to the line A indicates a time when the compressedpicture data is supplied to the storage unit 33.

To form a line B indicating the compressed picture data further delayedthe time “System_delay” from the line A, the STC set value calculator 40first sets STC delayed the time “System_delay” from the line A as aninitial value and sends the data to the STC incrementation unit 41. TheSTC incrementation unit 41 can generate STC corresponding to the line Bdelayed the time “System_delay” from the line A by increasing the newSTC linearly from the initial value of the received STC.

The STC incrementation unit 41 supplies the STC corresponding to theline B as STC information to the STC comparator 42, whereby it ispossible to inhibit read time information from being sent until an STCtime in the output time information delayed the time “System_delay” isreached. That is, the STC comparator 42 can send read time informationdelayed the time “System_delay” time from the STC time in the inputoutput time information to the data read controller 34. Thereby, timingcan freely be controlled by a simply constructed circuit.

The data read controller 34 reads the compressed picture data from thestorage unit 33 according to the read control signal delayed the time“System_delay”. Thus, the compressed picture data stored in the storageunit 33 can be delayed the time “System_delay” before being sent to theMPEG expander 35.

Note that the compressed picture data sent to the MPEG expander 35 isfirst additionally supplied to the stream buffer 36 in a predeterminedtiming, and then read from the MPEG expander 35 and expanded by the MPEGexpander 35. The additionally supply of the compressed picture data tothe stream buffer 36 will be described in detail later.

The STC corresponding to the line B formed by the STC incrementationunit 41 is sent as STC information to the STC comparator 42 and to theTS encoder 45 as well. So, the TS encoder 45 can create PCR from the STCand thus can directly TS-packetize each compressed picture data to besent.

That is, at whichever position in the recording medium 4 therecorder/player 1 according to the present invention starts readingdata, it can repeat an STC similar to that in the recording. It can makeECC coding of the STC by adding ETN to AUX. So, the data is higherreliable and also timing can be controlled with a high accuracy bysetting a System_delay time corresponding to the reproduction system 30at time of repeating the STC added to the recording medium 4.

Next, the operation of the stream buffer 36 when the normal-speedreproduction is shifted to a FORWARD variable-speed one will bedescribed.

FIG. 4 shows the stream buffer state before and after the shift to theFORWARD variable-speed reproduction. Data is recorded to the recordingmedium 4 in the direction of arrow indicated with “Recording position”in FIG. 4. GOPs different in data size from each other (namely, DOP0 toGOP5) are placed at recording positions, respectively, as shown. At theleft end of FIG. 4, there are time-serially shown states o to s thestream buffer 36 takes when each picture in each GOP is read.

In this connection, the arrow with “Medium read” indicates a position inthe recording medium 4 from which data is being read. Namely, in casethe recording medium 4 is a magnetic tape for example, the position is aone on the magnetic tape at which the magnetic head is in contact withthe latter.

It will be discussed here how the stream buffer 36 will operate when thenormal-speed reproduction is shifted to a FORWARD variable-speedreproduction such as frame advance when the stream buffer 36 is in thestate o where full GOP0 and a part of GOP1 have been stored in thestream buffer 36. At this time, pictures stored in the stream buffer 36are sequentially read by the MPEG expander 35 for a FORWARD reproductionfollowing the normal-speed reproduction. When pictures remaining in thestream buffer 36 counts three, new pictures are additionally stored intothe latter. In the buffer state o, new pictures are additionally storedinto the stream buffer 36 when B pictures shown each enclosed in athick-line block and corresponding to the remaining three pictures areread by the MPEG expander 35.

The stream buffer 36 is supplied with a fixed amount (data_add) ofadditional pictures beginning at the head of a GOP including the thirdone of the three pictures remaining therein. Therefore, in case thestream buffer 36 is in the state o, it will be supplied with anadditional amount (data_add) of pictures to the head of GOP1. Since anearly half of GOP1 has already been stored in the stream buffer 36,however, the newly added picture will be an additional data A as shownin FIG. 4.

The stream buffer 36 may determine the additional amount (data_add)correspondingly to the capacity of the stream buffer 36 or as given bythe following expression (1) taking a necessary margin in the system ofthe recorder/player 1:data_add=(capacity of the stream buffer 36)−(necessary margin in thesystem)  (1)where the “necessary margin in the system” may be set as one ECC takingaccount of a margin of one ECC in a system in which the reproductionoperation can be stopped only in one-ECC increments.

When it is detected that pictures have additionally been supplied up tothe amount (data_add), the data read controller 34 will inform therecording medium controller 14 of that fact and cause the latter to stopreading of data stream from the recording medium 4. Also, the streambuffer 36 sequentially stores additional pictures first to next to thelast picture written before supply of additional pictures as in a ringbuffer. For example, when in the state o and having been supplied withadditional data A first to next to the last B picture as in a ringbuffer, the stream buffer 36 takes the state p. In this state p, theadditional data A will sequentially be supplied to the stream buffer 36first to the buffer left end following the last B picture.

Next, when the stream buffer 36 is in the state p, the MPEG expander 35sequentially reads and expands pictures from the stream buffer 36starting with a B picture corresponding to the third one of theremaining pictures, indicated with a dotted-line square in FIG. 4. Then,when the third remaining B picture indicated with the dotted-line squareis read by the MPEG expander 35 with the stream buffer 36 being in thestate p, the stream buffer 36 is supplied with additional data B. Theamount of the additional data B is also the fixed stream amount(data_add) next to GOP2 including the third remaining B pictureindicated with the dotted-line square. When the additional data B issupplied to the stream buffer 36 to next to the last B picture as in aring buffer, the stream buffer 36 will take the state q.

Next, when the stream buffer 36 is in the state q, the MPEG expander 35sequentially reads and expands pictures from the stream buffer 36starting with a B picture corresponding to the third one of theremaining pictures, indicated with a dotted-line square in FIG. 4. Then,when the third remaining B picture indicated with the dotted-line squareis read by the MPEG expander 35 with the stream buffer 36 being in thestate q, the stream buffer 36 is supplied with additional data C. Theamount of the additional data C is also the fixed stream amount(data_add) next to GOP3 including the third remaining B pictureindicated with the dotted-line square. When the additional data B issupplied to the stream buffer 36 to next to the last B picture as in aring buffer, the stream buffer 36 will take the state r.

The MPEG expander 35 reads pictures from the stream buffer 36 in thestate r, and thus the stream buffer 36 is supplied with additional dataD and will take the state s.

According to the present invention, the stream buffer 36 is repeatedlysupplied with additional data for making the FORWARD variable-speedreproduction. Also, according to the present invention, the streambuffer 36 is sequentially supplied with additional data up to a fixedamount (data_add) first to the head of GOP. That is to say, in thestream buffer 36, an I picture is always stored at the head of each GOP.The I picture is indispensable for expansion of each picture included inthe GOP. Thus, when the variable-speed reproduction direction shiftsfrom FORWARD to REVERSE, the I picture in GOP which includes a pictureto be expanded by the MPEG expander 35 at the time of expansion willalways be stored in the stream buffer. Therefore, the MPEG expander 35can instantaneously read and expand a picture stored in the streambuffer 36 without waiting for additional supply of new data to thestream buffer 36, thereby permitting to smoothly cope with variousvariations in the variable-speed reproduction.

Note that the operation made when the normal-speed reproduction isshifted to the FORWARD variable-speed reproduction is not limited to theabove-mentioned one. In the above, when the pictures remaining in thestream buffer 36 count three, additional data is supplied to the streambuffer 36. For example, the operation may be such that when theremaining pictures in the stream buffer 36 count N (an arbitrarynumber), additional data is supplied to the stream buffer 36. In casethe stream buffer has a large capacity, N may be set larger for gainingtime for supply of additional data for the recording medium 4, whereby ahigh variable-speed and smooth reproduction can be done.

Also for a variable-speed reproduction, especially, for a high speedreproduction such as double-speed reproduction, the above embodiment canbe implemented with appropriate skipping over pictures.

When the normal-speed reproduction is shifted to REVERSE variable-speedreproduction, the stream buffer 36 operates as will be described below:

FIG. 5 shows the states of the stream buffer before and after shift tothe REVERSE variable-speed reproduction. GOPs different in data sizefrom each other (namely, DOP0 to GOP5) are placed at recordingpositions, respectively, in the recording medium 4 as shown. At theright end of FIG. 5, there are time-serially shown states t to w thestream buffer 36 takes when each picture in each GOP is read.

In this connection, the arrow with “Medium read” indicates a position inthe recording medium 4 from which data is being read. In case therecording medium 4 is a magnetic tape for example, the position is a oneon the magnetic tape at which the magnetic head is in contact with thelatter.

It will be discussed here how the stream buffer 36 will operate when thenormal-speed reproduction is shifted to a REVERSE variable-speedreproduction such as frame advance when the stream buffer 36 is in thestate t where a part of GOP3, full GOP 4 and a part of GOP5 have beenstored in the stream buffer 36. At this time, pictures stored in thestream buffer 36 are sequentially read by the MPEG expander 35 in theREVERSE direction opposite to a direction in the normal-speedreproduction in which pictures are read in the direction of anarrow-indicated recording position. For example, in case thenormal-speed reproduction is shifted to a variable-speed reproductionwhile a B picture indicated with a dotted-line square is being read fromthe stream buffer 36 in the state t, data will be read in a reverseorder from that B picture, a previous B picture, a P picture precedingthe previous B picture, a B picture preceding the previous P picture, .. . .

It is defined here that a GOP of which all pictures currently storedprovisionally in the stream buffer 36 in each of the stream bufferstates is a current GOP. According to the present invention, pictures insuch a current GOP in the stream buffer 36 count three, pictures in aGOP temporally preceding at least the current GOP are additionallysupplied to the stream buffer 36.

For example, when the stream buffer 36 is in the state t for example,the current GOP of which all pictures are recorded in the stream buffer36 is GOP4. When the pictures in the GOP4 in the stream buffer 36 countthree, pictures in GOP3 are additionally supplied as pictures in a GOPtemporally preceding the current GOP to the stream buffer 36.

At this time, each picture is read from the recording position in therecording medium 4, preceding over a fixed data amount (data_add) thesixth picture counted from the head of the current GOP through theprevious GOP, and additionally supplied to the stream buffer 36. Whenthe stream buffer 36 is in the state t, each picture is read from therecording position in the recording medium 4, preceding over the dataamount (data_add) a sixth B picture (number of additional frames in thecurrent GOP) counted from the head of GOP4, and additionally supplied tothe stream buffer 36.

The data amount (data_add) may be defined as given by the followingexpression (2) on the assumption that the number of additional frames inthe current GOP is “P” (six in the example shown in FIG. 5), the maximumnumber of pictures in one GOP is “Max_GOP”, picture data amount read perframe time in the normal-speed reproduction mode is “data_(—)1frame” andthe data amount in the VBV buffer is “vbv_occupancy”:data_add=(P+Max_GOP−1)×data_(—)1frame+vbv_occupancy  (2)By starting reading data from a recording position, based on data_addthus determined, in the recording medium 4, a previous GOP canadditionally be supplied as additional data to the stream buffer 36.

As above, the stream buffer 36 is supplied, as in a ring buffer, withthe acquired previous GOP as auxiliary data in the REVERSE directionfrom just before the leading picture in the current GOP. When in thestate t, the stream buffer 36 is supplied sequentially with GOP3 asadditional data F in the REVERSE direction from just before an I picturewhich is a leading picture in the current GOP, and thus takes the stateu.

When the stream buffer 36 is in the state u, the MPEG expander 35sequentially reads and expand data in the REVERSE direction startingwith a B picture corresponding to a remaining third picture indicatedwith a dotted-line square. The MPEG expander 35 reads the remainingthird B picture, indicated with the thick-line square, in the currentGOP in the stream buffer 36 that is in the state u first at therecording position, based on the determined data_add, in the recordingmedium 4, and GOP2 is additionally stored as additional data G into thestream buffer 36 as in a ring buffer. As a result, the stream buffer 36will take the state v.

Next, when the stream buffer 36 is in the state v, the MPEG expander 35sequentially reads and expands pictures in the REVERSE direction from aB picture corresponding to the third one of the remaining pictures,indicated with a dotted-line square in FIG. 5. The MPEG expander 35reads the remaining third B picture, indicated with the thick-linesquare, in the current GOP in the stream buffer 36 that is in the stateu first at the recording position, based on the determined data_add, inthe recording medium 4, and GOP0 and GOP1 are additionally stored asadditional data H into the stream buffer 36 as in a ring buffer. As aresult, the stream buffer 36 will take the state w.

When the stream buffer 36 is in the state w, the two GOPs, that is, GOP0and GOP1, are additionally stored into the stream buffer 36 since eachof these GOPs is small in size. It should be noted that withidentification of DTS (decoding time stamp) added to each GOP, the GOPsmay be separately stored into the stream buffer 36, whereby it ispossible to minimize the data amount for overwrite in the stream buffer36.

In this connection, when a previous GOP is additionally supplied asadditional data to the stream buffer 36, pictures in a GOP temporallypreceding the previous GOP, when read from the recording medium 4, arecontrolled not to flow into the stream buffer 36 so that all pictures inthe previous GOP, counted from the head of the previous GOP, willadditionally be stored into the stream buffer 36. This control may bedone by determining the type of a picture through analysis of a headerin the data or based on picture type information added to AUX to locatea GOP head depending on whether the picture type indicates an I pictureor by placing a picture flag at the GOP head.

On the assumption that DTS (decoding time stamp) of a leading picture ina current GOP is DTS_c, VBV delay of the leading picture is vbv_delay_c,DTS of the leading picture in a previous GOP is DTS_f and VBV delay of apicture in consideration is vbv_delay_f, the size of additional data canbe expressed as given by the following expression (3):Additional data size=(DTS_(—) c−vbv_delay_(—) c)−(DTS_(—)f−vbv_delay_(—) f)  (3)

Also, the address (start ADD) in the stream buffer 36, at which theadditional data starts being additionally supplied to the stream buffer36 may be determined as given by the following expression (4) accordingto an address (current ADD) of the leading picture in the current GOP inthe stream buffer 36, size of the additional data and capacity of thesream buffer 36:Start ADD=(current ADD−Additional data size+Capacity of stream buffer36)% Capacity of stream buffer 36  (4)where % indicates modulo calculation.

Namely, by additionally supplying the additional data to the streambuffer 36 on the basis of a start ADD determined by the expression (4),it is possible to minimize the data amount for overwrite in the streambuffer 36. Thus, also in case the variable-speed reproduction directionis shifted from REVERSE to FORWARD, the MPEG expander 35 caninstantaneously read and expand pictures stored in the stream buffer 36without waiting for additional supply of new pictures to the streambuffer 36, thereby permitting to smoothly cope with various variationsin the variable-speed reproduction.

Note that similarly in the REVERSE variable-speed reproduction, whenpictures have been stored up to a fixed stream amount, the data readcontroller 34 informs the recording medium controller 14 of the fact andcauses the latter to stop reading of data stream from the recordingmedium 4.

According to the present invention, additional supply of new data to thestream buffer 36 is repeated to enable smooth shifting of FORWARDnormal-speed reproduction being done to REVERSE variable-speedreproduction. Especially, according to the present invention, apredetermined amount of data is additionally supplied to the streambuffer 36 first to a GOP head. That is, an I picture indispensable forexpansion of each picture included in the GOP will always be stored ateach GOP head in the stream buffer 36. Thus, when the variable-speedreproduction direction is shifted from FORWARD to REVERSE, an I picturein a GOP including pictures to be expanded by the MPEG expander 35 willalways exist in the stream buffer 36 at the moment of the reproductiondirection shift. Therefore, the MPEG expander 35 instantaneously readand expand pictures stored in the stream buffer 36 without having towait for additional supply of new data, thereby permitting to smoothlycope with variable variations in the variable-speed reproduction.

Note that the operation made when the normal-speed reproduction isshifted to the REVERSE variable-speed reproduction is not limited to theabove-mentioned one. In the above, when the pictures remaining in thecurrent GOP in the stream buffer 36 count three, additional data issupplied to the stream buffer 36. For example, the operation may be suchthat when the remaining pictures in the stream buffer 36 count M (anarbitrary number), additional data is supplied to the stream buffer 36.In case the stream buffer has a large capacity, M may be set larger forgaining time for supply of additional data for the recording medium 4,whereby a high variable-speed and smooth reproduction can be done.

Also, the number of additional frames for the current GOP is not limitedto six. In case the stream buffer has a large capacity, P may be setlarger for gaining time for supply of additional data for the recordingmedium 4, whereby a high variable-speed and smooth reproduction can bedone. Also for a variable-speed reproduction, especially, for a highspeed reproduction such as double-speed reproduction, the aboveembodiment can be implemented with appropriate skipping over pictures.

In case a variable-speed reproduction is shifted to the normal-speedreproduction, the STC set value calculator 40 and STC incrementationunit 41 operate as will be described below:

FIG. 6 shows a change of STC at each time when a variable-speedreproduction is shifted to the normal-speed reproduction. In FIG. 6, thedashed line indicates STC of compressed picture data read from therecording medium 4, and the solid line indicates STC of compressedpicture data sent from the data read controller 34 to MPEG expander 35.

In the variable-speed reproduction lasting from a time t20 to t21, thetime at which data including an STC is read from the recording medium 4is generally coincident with the time at which data including the sameSTC is sent to the MPEG expander 35. Also in a variable-speedreproduction, it is necessary to set an STC initial value in time to STCof picture data read from the recording medium 4 as well as by the STCset value calculator 40. However, it is extremely difficult to set anSTC initial value accurately for each speed of a variable-speedreproduction. Also, it is actually difficult in the STC set valuecalculator 40 and STC incrementation unit 41 to set an STC without anymistiming by even one clock for each speed of a variable-speedreproduction and for no cumulative error. Therefore, in a variable-speedreproduction, all picture data read from the recording medium 4 andstored in the storage unit 33 are supplied as they are to the data readcontroller 34. In other words, compressed picture data is MPEG-expandedby the leak method.

Next, there will be discussed an operation in which a reproduction issuspended at a time t21 and a normal-speed reproduction is started at atime t22. The time zone from the time t21 to t22 is defined as a “shifttime”. The STC set value calculator 40 compares PTSs (PTS_s) of picturescurrently displayed on the display screen with each other on the basisof STC (STC_medium) in compressed picture data read from the recordingmedium 4 at the time of shifting, System_delay and a shift-caused delay(Shift_delay), and sets an STC initial value on the basis of thecomparison results. More specifically, it sets an STC initial value onthe basis of results of comparison between PTS_s and“STC_medium−(shift_delay+System_delay)”.

In this connection, shift_delay is a delay caused by a shift from avariable-speed reproduction to a normal-speed reproduction. In case therecording medium 4 is a magnetic tape, the shift_delay corresponds to atime which the magnetic tape speed is controlled to a normal speed.Also, in case the recording medium 4 is a magnetic disk, the shift_delaycorresponds to a time required for seek or the like.

FIG. 7 shows an example of STC initial value setting for a normal-speedreproduction when the following requirement (5) is met:PTS_(—) s≧{STC_medium−(shift_delay+System_delay)}  (5)In this case, the recording medium controller 34 will shift, at the timet22, data stream reading from the recording medium 4 from that in avariable-speed reproduction to that in a normal-speed reproduction inunits of a picture or in units of a GOP (group of pictures). The STC setvalue calculator 40 sets an STC initial value for the normal-speedreproduction as given by the following expression (6):Initial value=STC_medium−(shift_delay+System_delay)  (6)With this operation, the STC incrementation unit 41 can generate a newSTC in the normal-speed reproduction by linearly increasing the STCinitial value defined as given by the above expression (6). Also, asshown in FIG. 7, when the normal-speed reproduction is started at thetime t22, the STC will be caused by the shift_delay to rise gently. Bysetting an STC initial value as defined by the expression (6), it ispossible to generate an STC at a time delayed the time “System_delay”with consideration given to the shift_delay. Thus, even after shift tothe normal-speed reproduction, STC in compressed picture data read fromthe recording medium 4 can be delayed a fixed time “System_delay”.

Also, according to the present invention, while STC generated by the STCincrementation unit 41 for picture data expanded by the MEPG expander 35is being monitored, a picture whose STC corresponds to an STC includedin output time information is displayed. Thus, each of pictures incompressed picture data sent from the data read controller 34 to theMPEG expander 35 can be displayed on the screen in the normal-speedreproduction mode even in a time zone down to t23 at which thereproduction mode is shifted to the normal-speed reproduction delayed atime “System_delay”. Therefore, since each picture can be displayed onthe screen without skipping over any picture when the reproduction modeis shifted to the normal-speed reproduction and the reproduction modeshift can be done quickly, so the user can actually view a high-qualityimage.

Note that the TS encoder 45 will not TS-packetize data during anyvariable-speed reproduction because no temporal synchronization ispossible between STC included in STC information sent from the STCincrementation unit 41 and compressed picture data since the leak methodis used to supply the compressed picture data. Therefore, the TS encoder45 will make TS packetizing at STC (STC_a in FIG. 7) at which thereproduction mode is shifted to a normal-speed reproduction andsubsequent STCs.

FIG. 8 shows an example of STC initial value setting for a normal-speedreproduction when the following requirement (7) is met:PTS_(—) s<{STC_medium−(shift_delay+System_delay)}  (7)In this example, the STC set value calculator 40 sets an STC initialvalue in the normal-speed reproduction as PTS_s.

Namely, when the requirement as given by the expression (7) is met, itis necessary to set the above shift_delay and in addition an adjustmentvalue (adjust_delay) for coincidence between PTSs of pictures displayedon the screen in a variable-speed reproduction. The adjustment value canbe represented by the following expression (8):adjust_delay=(STC_medium−PTS_(—) s)−(shift_delay+System_delay)  (8)In this case, the recording medium controller 34 will shift, at a timedelayed a time “adjust_delay”, data stream reading from the recordingmedium 4 from that in a variable-speed reproduction to that in anormal-speed reproduction in units of a picture or in units of a GOP(group of pictures). Also, the STC incrementation unit 41 can generate anew STC in the normal-speed reproduction by linearly increasing the STCinitial value defined as PTS_s. In case the requirement (7) is met, whenthe normal-speed reproduction is started at the time t31 in FIG. 8, theSTC will be caused by the shift_delay to rise gently and a furtheradjust_delay will take place. However, the STC incrementation unit 41can generate STC with consideration given to such a delay. Thus, evenafter shift to the normal-speed reproduction, STC in compressed picturedata read from the recording medium 4 can be delayed a fixed time“System_delay”.

Also in case the requirement (7) is met, while STC generated by the STCincrementation unit 41 for picture data expanded by the MPEG expander 35is being monitored, a picture whose STC corresponds to an STC includedin output time information is displayed. Thus, each of pictures incompressed picture data sent from the data read controller 34 to theMPEG expander 35 can be displayed on the screen in the normal-speedreproduction mode also in a time zone down to t32 at which thereproduction mode is shifted to the normal-speed reproduction delayed atime “System_delay”. Therefore, since each picture can be displayed onthe screen without skipping over any picture when the reproduction modeis shifted to the normal-speed reproduction and the reproduction modeshift can be done quickly, so the user can actually view a high-qualityimage.

Note that even in case the requirement (7) is met, the TS encoder 45will not TS-packetize data during any variable-speed reproductionbecause no temporal synchronization is possible between STC included inSTC information sent from the STC incrementation unit 41 and compressedpicture data since the leak method is used to supply the compressedpicture data. Therefore, the TS encoder 45 will make TS packetizing atSTC (STC_a in FIG. 8) at which the reproduction mode is shifted to anormal-speed reproduction and subsequent STCs.

In the foregoing, the present invention has been described in detailconcerning certain preferred embodiments thereof as examples withreference to the accompanying drawings. However, it should be understoodby those ordinarily skilled in the art that the present invention is notlimited to the embodiments but can be modified in various manners,constructed alternatively or embodied in various other forms withoutdeparting from the scope and spirit thereof as set forth and defined inthe appended claims.

When the reproduction mode is shifted from a variable-speed one to anormal-speed one in compliance with the MPEG standard, an imagereproduced by a normal-speed reproduction can smoothly be displayedwithout skipping over any displayed images.

1. A picture data reproducing apparatus which reproduces compressedpicture data recorded to a recording medium according the MPEG standard,the apparatus comprising: a storage means for storing compressed picturedata read from a recording medium; an STC generating means forgenerating, for a normal-speed reproduction, STC (STC_d) sequentiallyfrom a set initial value, wherein the STC (STC_d) is delayed a fixedtime (System_delay) from STC (STC_medium) of the compressed picture dataread from the recording medium; a read control means for sequentiallyreading compressed picture data stored in the storage means on the basisof STC_d generated by the STC generating means; and a decoding means fordecoding the compressed picture data read by the read control means togenerate picture data for display; the STC generating means setting, atshift from a variable-speed reproduction to normal-speed reproduction,the initial value on the basis of a result of comparison between PTS(PTS_s) of the display picture data at the shift and STC_medium at theshift−(amount of delay due to the shift (shift_delay)+System_delay). 2.The apparatus as set forth in claim 1, wherein the STC generating meanssets the initial value as “STC_medium at the time ofshift−(shift_delay+System_delay)” at the shift from the variable-speedreproduction to normal-speed reproduction when the following requirementis met:PTS_(—) s≧{STC_medium at the time of shift−(shift_delay+System_delay)}.3. The apparatus as set forth in claim 2, further comprising a shiftingmeans for shifting the recording medium reproduction mode from thevariable-speed reproduction to normal-speed reproduction at a time setas the initial value by the STC generating means in units of a pictureor in units of a GOP (group of pictures).
 4. The apparatus as set forthin claim 1, wherein the STC generating means sets the initial value asPTS_s at the shift from the variable-speed reproduction to normal-speedreproduction when the following requirement is met:PTS_(—) s<{STC_medium at the time of shift−(shift_delay+System_delay)}.5. The apparatus as set forth in claim 4, further comprising a shiftingmeans for shifting the recording medium reproduction mode from thevariable-speed reproduction to normal-speed reproduction in units of apicture or in units of a GOP (group of pictures) at a time delayed atime “adjust_delay” defined as given below from a time when the STCgenerating means sets the initial value:Delay time (adjust_delay)=(STC_medium at the shift−PTS_(—)s)−(shift_delay+System_delay).
 6. The apparatus as set forth in claim 1,further comprising a TS packetizing means for TS-packetizing of onlycompressed picture data to be reproduced in the normal-speedreproduction mode.
 7. A picture data reproducing method of reproducingcompressed picture data recorded to a recording medium according theMPEG standard, the method comprising the steps of: storing compressedpicture data read from a recording medium; generating, for anormal-speed reproduction, STC (STC_d) sequentially from a set initialvalue, wherein the STC (STC_d) is delayed a fixed time (System_delay)from STC (STC_medium) of the compressed picture data read from therecording medium; sequentially reading compressed picture data stored inthe storage means correspondingly STC_d generated by the STC generatingmeans; and decoding the compressed picture data read by the read controlmeans to generate picture data for display; in the STC generating step,the initial value being set at shift from a variable-speed reproductionto normal-speed reproduction on the basis of a result of comparisonbetween PTS (PTS_s) of the display picture data at the shift andSTC_medium−(amount of delay due to the shift(shift_delay)+System_delay).
 8. The method as set forth in claim 7,wherein in the STC generating step, there is set the initial value as“STC_medium at the time of shift−(shift_delay+System_delay)” at theshift from the variable-speed reproduction to normal-speed reproductionwhen the following requirement is met:PTS_(—) s≧{STC_medium at the time of shift−(shift_delay+System_delay)}.9. The method as set forth in claim 8, further comprising a shiftingstep of shifting the recording medium reproduction mode from thevariable-speed reproduction to normal-speed reproduction at a time setas the initial value in the STC generating step in units of a picture orin units of a GOP (group of pictures).
 10. The method as set forth inclaim 7, wherein in the STC generating step, there is set the initialvalue as PTS_s at the shift from the variable-speed reproduction tonormal-speed reproduction when the following requirement is met:PTS_(—) s<{STC_medium at the time of shift−(shift_delay+System_delay)}.11. The method as set forth in claim 10, further comprising a shiftingstep of shifting the recording medium reproduction mode from thevariable-speed reproduction to normal-speed reproduction in units of apicture or in units of a GOP (group of pictures) at a time delayed atime “adjust_delay” defined as given below from a time when in the STCgenerating step, there is set the initial value:Delay time (adjust_delay)=(STC_medium at the shift−PTS_(—) s)(shiftdelay+System_delay).
 12. The method as set forth in claim 7, furthercomprising a TS packetizing step of TS-packetizing of only compressedpicture data to be reproduced in the normal-speed reproduction mode.